Title: General
Order: 0
---

<h2>Score Details</h2>

<p>
	The full score details are available as object dom. This way you can read and process any
	file like you need. 
</p>

<div id="alphaTabScore" data-file="@Context.GetLink("/assets/files/features/Skillet.gp5")">
	Loading...        
</div>
<script type="text/javascript">
	var score = alphaTab.importer.ScoreLoader.LoadScoreAsync($('#alphaTabScore').data('file'), 
	function(score) {
		var info = jQuery('#alphaTabScore');
		info.html('');
		info.append('<p><b>Title:</b> '+score.Title+'</p>');
		info.append('<p><b>Subtitle:</b> '+score.Subtitle+'</p>');
		info.append('<p><b>Album:</b> '+score.Album+'</p>');
		info.append('<p><b>Tempo:</b> '+score.Tempo+'</p>');
		info.append('<p><b>Bars:</b> '+score.MasterBars.length+'</p>');
		info.append('<p><b>Tracks:</b> ('+score.Tracks.length+')</p>');
		var tracks = $('<ul></ul>');
		for(var i = 0; i < score.Tracks.length; i++) {
			tracks.append('<li>'+score.Tracks[i].Name+'</li>');
		}
		info.append(tracks);
	},
	function(error) {
		jQuery('#alphaTabScore').text('Error Loading the file: ' + error);
	});
</script>

<h2>Song Details</h2>

<p>
	Some of the layout engines can render the song details on top of the music sheet.
</p>

<div id="alphaTabDetails" data-file="@Context.GetLink("/assets/files/features/SongDetails.gp5")"></div>
<script type="text/javascript">
	$('#alphaTabDetails').alphaTab();
</script>
	
<h2>HTML5 Canvas</h2>

<p>
	Do you prefer an HTML5 canvas output instead of SVG? No problem.
</p>

<div id="alphaTabHtml5" data-file="@Context.GetLink("/assets/files/features/SongDetails.gp5")"></div>
<script type="text/javascript">
	$('#alphaTabHtml5').alphaTab({
		engine: 'html5',
		useWorker: false, // html5 is not compatible with web workers
	});
</script>

<h2>Repeats</h2>

<p>
	Need display repeat marks? No problem, single repeats and multiple repeats come out of the box.
</p>

<div id="alphaTabRepeats" data-file="@Context.GetLink("/assets/files/features/Repeats.gp5")"></div>
<script type="text/javascript">
	$('#alphaTabRepeats').alphaTab({
		staves: 'score'
	});
</script>


<h2>Alternate Endings</h2>

<p>
   Even alternate repeat endings are no problem. 
</p>

<div id="alphaTabAlternateEndings" data-file="@Context.GetLink("/assets/files/features/AlternateEndings.gp5")"></div>
<script type="text/javascript">
	$('#alphaTabAlternateEndings').alphaTab({
		staves: 'score'
	});
</script>

<h2>Tunings</h2>

<p>
	The guitar tuning of the current track is rendered on the top of the music notation.
</p>

<div id="alphaTabTuning" data-file="@Context.GetLink("/assets/files/features/Tuning.gp5")"></div>
<script type="text/javascript">
	$('#alphaTabTuning').alphaTab();
</script>